{
 "cells": [
  {
   "cell_type": "code",
   "execution_count": 1,
   "metadata": {
    "collapsed": false
   },
   "outputs": [],
   "source": [
    "import numpy as np\n",
    "%matplotlib inline\n",
    "import matplotlib.pyplot as plt\n",
    "from scipy.stats import norm"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "# Kalman Filter Implementation for Constant Acceleration Model (CA) in Python"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "Situation covered: You have an acceleration sensor (in 2D: $\\ddot x$ and $\\ddot y$) and a Position Sensor (e.g. GPS) and try to calculate velocity ($\\dot x$ and $\\dot y$) as well as position ($x$ and $y$) of a person holding a smartphone in his/her hand.\n",
    "\n",
    "![Smartphone](http://farm8.staticflickr.com/7324/12470549875_d562b39f52.jpg)\n",
    "\n",
    "unter CC BY-NC 2.0 von flickr.com von Canadian Pacific"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "## State Vector - Constant Acceleration"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "Constant Acceleration Model for Ego Motion in Plane\n",
    "\n",
    "$$x= \\left[ \\matrix{ x \\\\ y \\\\ \\dot x \\\\ \\dot y \\\\ \\ddot x \\\\ \\ddot y} \\right]$$\n",
    "\n"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "Formal Definition:\n",
    "\n",
    "$$x_{k+1} = A \\cdot x_{k} + B \\cdot u$$\n",
    "\n",
    "Hence, we have no control input $u$:\n",
    "\n",
    "$$x_{k+1} = \\begin{bmatrix}1 & 0 & \\Delta t & 0 & \\frac{1}{2}\\Delta t^2 & 0 \\\\ 0 & 1 & 0 & \\Delta t & 0 & \\frac{1}{2}\\Delta t^2 \\\\ 0 & 0 & 1 & 0 & \\Delta t & 0 \\\\ 0 & 0 & 0 & 1 & 0 & \\Delta t \\\\ 0 & 0 & 0 & 0 & 1 & 0  \\\\ 0 & 0 & 0 & 0 & 0 & 1\\end{bmatrix} \\cdot \\begin{bmatrix} x \\\\ y \\\\ \\dot x \\\\ \\dot y \\\\ \\ddot x \\\\ \\ddot y\\end{bmatrix}_{k}$$\n",
    "\n",
    "$$y = H \\cdot x$$\n",
    "\n",
    "Acceleration ($\\ddot x$ & $\\ddot y$) as well as position ($x$ & $y$) is measured.\n",
    "\n",
    "$$y = \\begin{bmatrix}1 & 0 & 0 & 0 & 0 & 0 \\\\0 & 1 & 0 & 0 & 0 & 0 \\\\ 0 & 0 & 0 & 0 & 1 & 0 \\\\ 0 & 0 & 0 & 0 & 0 & 1\\end{bmatrix} \\cdot x$$"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "#### Initial State"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 2,
   "metadata": {
    "collapsed": false
   },
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "(matrix([[ 0.],\n",
      "        [ 0.],\n",
      "        [ 0.],\n",
      "        [ 0.],\n",
      "        [ 0.],\n",
      "        [ 0.]]), (6, 1))\n"
     ]
    },
    {
     "data": {
      "text/plain": [
       "<matplotlib.text.Text at 0x106d99310>"
      ]
     },
     "execution_count": 2,
     "metadata": {},
     "output_type": "execute_result"
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "/Users/paul/anaconda/lib/python2.7/site-packages/matplotlib/collections.py:590: FutureWarning: elementwise comparison failed; returning scalar instead, but in the future will perform elementwise comparison\n",
      "  if self._edgecolors == str('face'):\n"
     ]
    },
    {
     "data": {
      "image/png": "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\nXkMAAAAASUVORK5CYII=\n",
      "text/plain": [
       "<matplotlib.figure.Figure at 0x106c13e10>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "x = np.matrix([[0.0, 0.0, 0.0, 0.0, 0.0, 0.0]]).T\n",
    "print(x, x.shape)\n",
    "n=x.size # States\n",
    "plt.scatter(float(x[0]),float(x[1]), s=100)\n",
    "plt.title('Initial Location')"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "#### Initial Uncertainty"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 3,
   "metadata": {
    "collapsed": false
   },
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "(array([[ 10.,   0.,   0.,   0.,   0.,   0.],\n",
      "       [  0.,  10.,   0.,   0.,   0.,   0.],\n",
      "       [  0.,   0.,  10.,   0.,   0.,   0.],\n",
      "       [  0.,   0.,   0.,  10.,   0.,   0.],\n",
      "       [  0.,   0.,   0.,   0.,  10.,   0.],\n",
      "       [  0.,   0.,   0.,   0.,   0.,  10.]]), (6, 6))\n"
     ]
    },
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<matplotlib.figure.Figure at 0x106e80d90>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "P = 10.0*np.eye(6)\n",
    "print(P, P.shape)\n",
    "\n",
    "\n",
    "fig = plt.figure(figsize=(6, 6))\n",
    "im = plt.imshow(P, interpolation=\"none\", cmap=plt.get_cmap('binary'))\n",
    "plt.title('Initial Covariance Matrix $P$')\n",
    "ylocs, ylabels = plt.yticks()\n",
    "# set the locations of the yticks\n",
    "plt.yticks(np.arange(7))\n",
    "# set the locations and labels of the yticks\n",
    "plt.yticks(np.arange(6),('$x$', '$y$', '$\\dot x$', '$\\dot y$', '$\\ddot x$', '$\\ddot y$'), fontsize=22)\n",
    "\n",
    "xlocs, xlabels = plt.xticks()\n",
    "# set the locations of the yticks\n",
    "plt.xticks(np.arange(7))\n",
    "# set the locations and labels of the yticks\n",
    "plt.xticks(np.arange(6),('$x$', '$y$', '$\\dot x$', '$\\dot y$', '$\\ddot x$', '$\\ddot y$'), fontsize=22)\n",
    "\n",
    "plt.xlim([-0.5,5.5])\n",
    "plt.ylim([5.5, -0.5])\n",
    "\n",
    "from mpl_toolkits.axes_grid1 import make_axes_locatable\n",
    "divider = make_axes_locatable(plt.gca())\n",
    "cax = divider.append_axes(\"right\", \"5%\", pad=\"3%\")\n",
    "plt.colorbar(im, cax=cax)\n",
    "\n",
    "\n",
    "plt.tight_layout()"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "## Dynamic Matrix"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "It is calculated from the dynamics of the Egomotion.\n",
    "\n",
    "$$x_{k+1} = x_{k} + \\dot x_{k} \\cdot \\Delta t +  \\ddot x_k \\cdot \\frac{1}{2}\\Delta t^2$$\n",
    "$$y_{k+1} = y_{k} + \\dot y_{k} \\cdot \\Delta t +  \\ddot y_k \\cdot \\frac{1}{2}\\Delta t^2$$\n",
    "\n",
    "$$\\dot x_{k+1} = \\dot x_{k} + \\ddot x \\cdot \\Delta t$$\n",
    "$$\\dot y_{k+1} = \\dot y_{k} + \\ddot y \\cdot \\Delta t$$\n",
    "\n",
    "$$\\ddot x_{k+1} = \\ddot x_{k}$$\n",
    "$$\\ddot y_{k+1} = \\ddot y_{k}$$"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 4,
   "metadata": {
    "collapsed": false
   },
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "(matrix([[ 1.   ,  0.   ,  0.1  ,  0.   ,  0.005,  0.   ],\n",
      "        [ 0.   ,  1.   ,  0.   ,  0.1  ,  0.   ,  0.005],\n",
      "        [ 0.   ,  0.   ,  1.   ,  0.   ,  0.1  ,  0.   ],\n",
      "        [ 0.   ,  0.   ,  0.   ,  1.   ,  0.   ,  0.1  ],\n",
      "        [ 0.   ,  0.   ,  0.   ,  0.   ,  1.   ,  0.   ],\n",
      "        [ 0.   ,  0.   ,  0.   ,  0.   ,  0.   ,  1.   ]]), (6, 6))\n"
     ]
    }
   ],
   "source": [
    "dt = 0.1 # Time Step between Filter Steps\n",
    "\n",
    "A = np.matrix([[1.0, 0.0, dt, 0.0, 1/2.0*dt**2, 0.0],\n",
    "              [0.0, 1.0, 0.0, dt, 0.0, 1/2.0*dt**2],\n",
    "              [0.0, 0.0, 1.0, 0.0, dt, 0.0],\n",
    "              [0.0, 0.0, 0.0, 1.0, 0.0, dt],\n",
    "              [0.0, 0.0, 0.0, 0.0, 1.0, 0.0],\n",
    "              [0.0, 0.0, 0.0, 0.0, 0.0, 1.0]])\n",
    "print(A, A.shape)"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "## Measurement Matrix"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "Here you can determine, which of the states is covered by a measurement. In this example, the position ($x$ and $y$) as well as the acceleration is measured ($\\ddot x$ and $\\ddot y$)."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 5,
   "metadata": {
    "collapsed": false
   },
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "(matrix([[ 1.,  0.,  0.,  0.,  0.,  0.],\n",
      "        [ 0.,  1.,  0.,  0.,  0.,  0.],\n",
      "        [ 0.,  0.,  0.,  0.,  1.,  0.],\n",
      "        [ 0.,  0.,  0.,  0.,  0.,  1.]]), (4, 6))\n"
     ]
    }
   ],
   "source": [
    "H = np.matrix([[1.0, 0.0, 0.0, 0.0, 0.0, 0.0],\n",
    "               [0.0, 1.0, 0.0, 0.0, 0.0, 0.0],\n",
    "               [0.0, 0.0, 0.0, 0.0, 1.0, 0.0],\n",
    "              [0.0, 0.0, 0.0, 0.0, 0.0, 1.0]])\n",
    "print(H, H.shape)"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "## Measurement Noise Covariance R"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 6,
   "metadata": {
    "collapsed": false
   },
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "(matrix([[ 10000.,      0.,      0.,      0.],\n",
      "        [     0.,  10000.,      0.,      0.],\n",
      "        [     0.,      0.,    100.,      0.],\n",
      "        [     0.,      0.,      0.,    100.]]), (4, 4))\n"
     ]
    },
    {
     "data": {
      "image/png": "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\nzKyQ/j+SG6oKU1Y/0AAAAABJRU5ErkJggg==\n",
      "text/plain": [
       "<matplotlib.figure.Figure at 0x107084dd0>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "ra = 10.0**2   # Noise of Acceleration Measurement\n",
    "rp = 100.0**2  # Noise of Position Measurement\n",
    "R = np.matrix([[rp, 0.0, 0.0, 0.0],\n",
    "               [0.0, rp, 0.0, 0.0],\n",
    "               [0.0, 0.0, ra, 0.0],\n",
    "               [0.0, 0.0, 0.0, ra]])\n",
    "print(R, R.shape)\n",
    "\n",
    "fig = plt.figure(figsize=(6, 6))\n",
    "im = plt.imshow(R, interpolation=\"none\", cmap=plt.get_cmap('binary'))\n",
    "plt.title('Measurement Noise Covariance Matrix $R$')\n",
    "ylocs, ylabels = plt.yticks()\n",
    "# set the locations of the yticks\n",
    "plt.yticks(np.arange(5))\n",
    "# set the locations and labels of the yticks\n",
    "plt.yticks(np.arange(4),('$x$', '$y$', '$\\ddot x$', '$\\ddot y$'), fontsize=22)\n",
    "\n",
    "xlocs, xlabels = plt.xticks()\n",
    "# set the locations of the yticks\n",
    "plt.xticks(np.arange(5))\n",
    "# set the locations and labels of the yticks\n",
    "plt.xticks(np.arange(4),('$x$', '$y$', '$\\ddot x$', '$\\ddot y$'), fontsize=22)\n",
    "\n",
    "plt.xlim([-0.5,3.5])\n",
    "plt.ylim([3.5, -0.5])\n",
    "\n",
    "from mpl_toolkits.axes_grid1 import make_axes_locatable\n",
    "divider = make_axes_locatable(plt.gca())\n",
    "cax = divider.append_axes(\"right\", \"5%\", pad=\"3%\")\n",
    "plt.colorbar(im, cax=cax)\n",
    "\n",
    "plt.tight_layout()"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "## Process Noise Covariance Matrix Q for CA Model"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "The Position of an object can be influenced by a force (e.g. wind), which leads to an acceleration disturbance (noise). This process noise has to be modeled with the process noise covariance matrix Q.\n",
    "\n",
    "$$Q = \\begin{bmatrix}\\sigma_{x}^2 & \\sigma_{xy} & \\sigma_{x \\dot x} & \\sigma_{x \\dot y} & \\sigma_{x \\ddot x} & \\sigma_{x \\ddot y} \\\\ \\sigma_{yx} & \\sigma_{y}^2 & \\sigma_{y \\dot x} & \\sigma_{y \\dot y} & \\sigma_{y \\ddot x} & \\sigma_{y \\ddot y} \\\\ \\sigma_{\\dot x x} & \\sigma_{\\dot x y} & \\sigma_{\\dot x}^2 & \\sigma_{\\dot x \\dot y} & \\sigma_{\\dot x \\ddot x} & \\sigma_{\\dot x \\ddot y} \\\\ \\sigma_{\\dot y x} & \\sigma_{\\dot y y} & \\sigma_{\\dot y \\dot x} & \\sigma_{\\dot y}^2 & \\sigma_{\\dot y \\ddot x} & \\sigma_{\\dot y \\ddot y} \\\\ \\sigma_{\\ddot x x} & \\sigma_{\\ddot x y} & \\sigma_{\\ddot x \\dot x} & \\sigma_{\\ddot x \\dot y} & \\sigma_{\\ddot x}^2 & \\sigma_{\\ddot x \\ddot y} \\\\ \\sigma_{\\ddot y x} & \\sigma_{\\ddot y y} & \\sigma_{\\ddot y \\dot x} & \\sigma_{\\ddot y \\dot y} & \\sigma_{\\ddot y \\ddot x} & \\sigma_{\\ddot y}^2\\end{bmatrix}$$\n",
    "\n",
    "To easily calcualte Q, one can ask the question: How the noise effects my state vector? For example, how the acceleration change the position over one timestep dt.\n",
    "\n",
    "One can calculate Q as\n",
    "\n",
    "$$Q = G\\cdot G^T \\cdot \\sigma_a^2$$\n",
    "\n",
    "with $G = \\begin{bmatrix}0.5dt^2 & 0.5dt^2 & dt & dt & 1.0 & 1.0\\end{bmatrix}^T$ and $\\sigma_a$ as the acceleration process noise."
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "#### Symbolic Calculation"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 7,
   "metadata": {
    "collapsed": false
   },
   "outputs": [
    {
     "data": {
      "text/latex": [
       "$$\\left[\\begin{matrix}0.25 \\Delta t^{4} & 0.25 \\Delta t^{4} & 0.5 \\Delta t^{3} & 0.5 \\Delta t^{3} & 0.5 \\Delta t^{2} & 0.5 \\Delta t^{2}\\\\0.25 \\Delta t^{4} & 0.25 \\Delta t^{4} & 0.5 \\Delta t^{3} & 0.5 \\Delta t^{3} & 0.5 \\Delta t^{2} & 0.5 \\Delta t^{2}\\\\0.5 \\Delta t^{3} & 0.5 \\Delta t^{3} & \\Delta t^{2} & \\Delta t^{2} & 1.0 \\Delta t & 1.0 \\Delta t\\\\0.5 \\Delta t^{3} & 0.5 \\Delta t^{3} & \\Delta t^{2} & \\Delta t^{2} & 1.0 \\Delta t & 1.0 \\Delta t\\\\0.5 \\Delta t^{2} & 0.5 \\Delta t^{2} & 1.0 \\Delta t & 1.0 \\Delta t & 1.0 & 1.0\\\\0.5 \\Delta t^{2} & 0.5 \\Delta t^{2} & 1.0 \\Delta t & 1.0 \\Delta t & 1.0 & 1.0\\end{matrix}\\right]$$"
      ],
      "text/plain": [
       "⎡             4               4              3              3              2  \n",
       "⎢0.25⋅\\Delta t   0.25⋅\\Delta t   0.5⋅\\Delta t   0.5⋅\\Delta t   0.5⋅\\Delta t   \n",
       "⎢                                                                             \n",
       "⎢             4               4              3              3              2  \n",
       "⎢0.25⋅\\Delta t   0.25⋅\\Delta t   0.5⋅\\Delta t   0.5⋅\\Delta t   0.5⋅\\Delta t   \n",
       "⎢                                                                             \n",
       "⎢            3               3             2              2                   \n",
       "⎢0.5⋅\\Delta t    0.5⋅\\Delta t      \\Delta t       \\Delta t     1.0⋅\\Delta t   \n",
       "⎢                                                                             \n",
       "⎢            3               3             2              2                   \n",
       "⎢0.5⋅\\Delta t    0.5⋅\\Delta t      \\Delta t       \\Delta t     1.0⋅\\Delta t   \n",
       "⎢                                                                             \n",
       "⎢            2               2                                                \n",
       "⎢0.5⋅\\Delta t    0.5⋅\\Delta t    1.0⋅\\Delta t   1.0⋅\\Delta t        1.0       \n",
       "⎢                                                                             \n",
       "⎢            2               2                                                \n",
       "⎣0.5⋅\\Delta t    0.5⋅\\Delta t    1.0⋅\\Delta t   1.0⋅\\Delta t        1.0       \n",
       "\n",
       "            2⎤\n",
       "0.5⋅\\Delta t ⎥\n",
       "             ⎥\n",
       "            2⎥\n",
       "0.5⋅\\Delta t ⎥\n",
       "             ⎥\n",
       "             ⎥\n",
       "1.0⋅\\Delta t ⎥\n",
       "             ⎥\n",
       "             ⎥\n",
       "1.0⋅\\Delta t ⎥\n",
       "             ⎥\n",
       "             ⎥\n",
       "     1.0     ⎥\n",
       "             ⎥\n",
       "             ⎥\n",
       "     1.0     ⎦"
      ]
     },
     "execution_count": 7,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "from sympy import Symbol, Matrix\n",
    "from sympy.interactive import printing\n",
    "printing.init_printing()\n",
    "dts = Symbol('\\Delta t')\n",
    "Qs = Matrix([[0.5*dts**2],[0.5*dts**2],[dts],[dts],[1.0],[1.0]])\n",
    "Qs*Qs.T"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 8,
   "metadata": {
    "collapsed": false
   },
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "(matrix([[  2.50000000e-11,   2.50000000e-11,   5.00000000e-10,\n",
      "           5.00000000e-10,   5.00000000e-09,   5.00000000e-09],\n",
      "        [  2.50000000e-11,   2.50000000e-11,   5.00000000e-10,\n",
      "           5.00000000e-10,   5.00000000e-09,   5.00000000e-09],\n",
      "        [  5.00000000e-10,   5.00000000e-10,   1.00000000e-08,\n",
      "           1.00000000e-08,   1.00000000e-07,   1.00000000e-07],\n",
      "        [  5.00000000e-10,   5.00000000e-10,   1.00000000e-08,\n",
      "           1.00000000e-08,   1.00000000e-07,   1.00000000e-07],\n",
      "        [  5.00000000e-09,   5.00000000e-09,   1.00000000e-07,\n",
      "           1.00000000e-07,   1.00000000e-06,   1.00000000e-06],\n",
      "        [  5.00000000e-09,   5.00000000e-09,   1.00000000e-07,\n",
      "           1.00000000e-07,   1.00000000e-06,   1.00000000e-06]]), (6, 6))\n"
     ]
    }
   ],
   "source": [
    "sa = 0.001\n",
    "G = np.matrix([[1/2.0*dt**2],\n",
    "               [1/2.0*dt**2],\n",
    "               [dt],\n",
    "               [dt],\n",
    "               [1.0],\n",
    "               [1.0]])\n",
    "Q = G*G.T*sa**2\n",
    "\n",
    "print(Q, Q.shape)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 9,
   "metadata": {
    "collapsed": false
   },
   "outputs": [
    {
     "data": {
      "image/png": "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\ngg==\n",
      "text/plain": [
       "<matplotlib.figure.Figure at 0x1084cffd0>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "fig = plt.figure(figsize=(6, 6))\n",
    "im = plt.imshow(Q, interpolation=\"none\", cmap=plt.get_cmap('binary'))\n",
    "plt.title('Process Noise Covariance Matrix $Q$')\n",
    "ylocs, ylabels = plt.yticks()\n",
    "# set the locations of the yticks\n",
    "plt.yticks(np.arange(7))\n",
    "# set the locations and labels of the yticks\n",
    "plt.yticks(np.arange(6),('$x$', '$y$', '$\\dot x$', '$\\dot y$', '$\\ddot x$', '$\\ddot y$'), fontsize=22)\n",
    "\n",
    "xlocs, xlabels = plt.xticks()\n",
    "# set the locations of the yticks\n",
    "plt.xticks(np.arange(7))\n",
    "# set the locations and labels of the yticks\n",
    "plt.xticks(np.arange(6),('$x$', '$y$', '$\\dot x$', '$\\dot y$', '$\\ddot x$', '$\\ddot y$'), fontsize=22)\n",
    "\n",
    "plt.xlim([-0.5,5.5])\n",
    "plt.ylim([5.5, -0.5])\n",
    "\n",
    "from mpl_toolkits.axes_grid1 import make_axes_locatable\n",
    "divider = make_axes_locatable(plt.gca())\n",
    "cax = divider.append_axes(\"right\", \"5%\", pad=\"3%\")\n",
    "plt.colorbar(im, cax=cax)\n",
    "\n",
    "plt.tight_layout()"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "## Identity Matrix"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 10,
   "metadata": {
    "collapsed": false
   },
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "(array([[ 1.,  0.,  0.,  0.,  0.,  0.],\n",
      "       [ 0.,  1.,  0.,  0.,  0.,  0.],\n",
      "       [ 0.,  0.,  1.,  0.,  0.,  0.],\n",
      "       [ 0.,  0.,  0.,  1.,  0.,  0.],\n",
      "       [ 0.,  0.,  0.,  0.,  1.,  0.],\n",
      "       [ 0.,  0.,  0.,  0.,  0.,  1.]]), (6, 6))\n"
     ]
    }
   ],
   "source": [
    "I = np.eye(n)\n",
    "print(I, I.shape)"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "## Measurements"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "#### Position (every 10th of an acceleration measurement, there is a new position measurement from GPS)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 11,
   "metadata": {
    "collapsed": false
   },
   "outputs": [],
   "source": [
    "m = 500 # Measurements\n",
    "\n",
    "sp= 1.0 # Sigma for position\n",
    "px= 0.0 # x Position\n",
    "py= 0.0 # y Position\n",
    "\n",
    "mpx = np.array(px+sp*np.random.randn(m))\n",
    "mpy = np.array(py+sp*np.random.randn(m))\n",
    "\n",
    "GPS=np.ndarray(m,dtype='bool')\n",
    "GPS[0]=True\n",
    "# Less new position updates\n",
    "for i in range(1,m):\n",
    "    if i%10==0:\n",
    "        GPS[i]=True\n",
    "    else:\n",
    "        mpx[i]=mpx[i-1]\n",
    "        mpy[i]=mpy[i-1]\n",
    "        GPS[i]=False"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "#### Acceleration"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 12,
   "metadata": {
    "collapsed": false
   },
   "outputs": [],
   "source": [
    "# Acceleration\n",
    "sa= 0.1 # Sigma for acceleration\n",
    "ax= 0.0 # in X\n",
    "ay= 0.0 # in Y\n",
    "\n",
    "mx = np.array(ax+sa*np.random.randn(m))\n",
    "my = np.array(ay+sa*np.random.randn(m))"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 13,
   "metadata": {
    "collapsed": false
   },
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "(4, 500)\n"
     ]
    }
   ],
   "source": [
    "measurements = np.vstack((mpx,mpy,mx,my))\n",
    "\n",
    "print(measurements.shape)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 14,
   "metadata": {
    "collapsed": false
   },
   "outputs": [
    {
     "data": {
      "image/png": "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\nNc0YOFxlT+8Rkm5z99slyczOl/QSSYNBbzm5AwAAAAAKUkQwWpazzjpLu3bt6ge8krRhwwYdeeSR\nFaYqvSpD8/0l3ZF4fGf3uSSXdKSZfcPMLjGzZ5aWOgAAAACYcffee6/OPfdcnXzyyf3ndu/erauv\nvloveMELKkxZelX29KZp6vhXSZvc/Ydm9kuSPivpacUmCwAAAAAgSVdffbV2796tY489tv/ctdde\nq927d+uYY46pMGXpVRn0fk/SpsTjTer09va5+/2J/19qZu83s7a7Lw2+2fz8fP//mzdv1ubNm0On\nFwAAAABmyq5duyRJBx98cP+5xcVFHX744dq4caMWFhY0NzcX/HMXFxe1uLgY5L3MvZqx5Wa2VtI3\nJR0r6fuSrpN0SnIhKzN7nKTt7u5mdoSkC9z9yUPey6v6HgAAAABmj5lpFmKQu+66S0996lN12223\n6YlPfKKuv/56/dqv/ZqOO+44/fVf/7Xe9ra3acuWLfrwhz+sL37xi/r4xz+utWvX6nd+53d0xhln\n6BnPeMbEz0hzLLuvybXeU2VBryR1hyz3tiz6oLu/3cxeJ0nufq6Z/YGk35P0Y0k/lHS6u18z5H0I\negEAAACUZlaCXkn69Kc/rYsvvlgHHnig9t13Xx199NE644wzdMghh+j000/XNddco5NOOkmHHXaY\nvva1r2nDhg3atGmTtm3bpnXr1k18/6iD3lAIegEAAACUaZaC3kkeeOABbdu2TW95y1v0uc99Tv/x\nH/+hU045Rdddd12qvy866G3GxkoAAAAAgFrauHGj/vEf/1EnnXSSJOnLX/5yrbYzIugFAAAAAExl\n+/btetKTniRJ+sIXvlCroJfhzQAAAACQEcObV/ryl7+s888/X4cffrhe//rX66abbtKmTZsm/6GY\n05sKQS8AAACAMhH0Dvftb39bxx9/vLZt25b6b5jTCwAAAACorS996Ut64QtfKEl617vepa1bt1ac\nopXo6QUAAACAjOjp3etb3/qWzj//fLXbbUnS7/7u72b6e4Y3p0DQCwAAAKBMBL3hMLwZAAAAAICc\nCHoBAAAAANEi6AUAAAAARIugFwAAAAAQrbVVJwAAAJSrvdDW8q5ltda1tDS3VHVyAAAoFD29AADM\nmOVdy/KtruVdy1UnBQCAwhH0AgAAAACiRdALAAAAAIgWc3oBAAAAIAczqzoJSIGgFwAAAAAycveq\n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\n",
      "text/plain": [
       "<matplotlib.figure.Figure at 0x10851b350>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "fig = plt.figure(figsize=(16,9))\n",
    "plt.subplot(211)\n",
    "plt.step(range(m),mpx, label='$x$')\n",
    "plt.step(range(m),mpy, label='$y$')\n",
    "plt.ylabel('Position')\n",
    "plt.title('Measurements')\n",
    "plt.ylim([-10, 10])\n",
    "plt.legend(loc='best',prop={'size':18})\n",
    "\n",
    "plt.subplot(212)\n",
    "plt.step(range(m),mx, label='$a_x$')\n",
    "plt.step(range(m),my, label='$a_y$')\n",
    "plt.ylabel('Acceleration')\n",
    "plt.ylim([-1, 1])\n",
    "plt.legend(loc='best',prop={'size':18})\n",
    "\n",
    "\n",
    "plt.savefig('Kalman-Filter-CA-Measurements.png', dpi=72, transparent=True, bbox_inches='tight')"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 15,
   "metadata": {
    "collapsed": false
   },
   "outputs": [],
   "source": [
    "# Preallocation for Plotting\n",
    "xt = []\n",
    "yt = []\n",
    "dxt= []\n",
    "dyt= []\n",
    "ddxt=[]\n",
    "ddyt=[]\n",
    "Zx = []\n",
    "Zy = []\n",
    "Px = []\n",
    "Py = []\n",
    "Pdx= []\n",
    "Pdy= []\n",
    "Pddx=[]\n",
    "Pddy=[]\n",
    "Kx = []\n",
    "Ky = []\n",
    "Kdx= []\n",
    "Kdy= []\n",
    "Kddx=[]\n",
    "Kddy=[]"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "## Kalman Filter"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "![Kalman Filter](https://raw.github.com/balzer82/Kalman/master/Kalman-Filter-Step.png)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 16,
   "metadata": {
    "collapsed": false
   },
   "outputs": [],
   "source": [
    "for filterstep in range(m):\n",
    "    \n",
    "    # Time Update (Prediction)\n",
    "    # ========================\n",
    "    # Project the state ahead\n",
    "    x = A*x\n",
    "    \n",
    "    # Project the error covariance ahead\n",
    "    P = A*P*A.T + Q    \n",
    "    \n",
    "    \n",
    "    # Measurement Update (Correction)\n",
    "    # ===============================\n",
    "    # if there is a GPS Measurement\n",
    "    if GPS[filterstep]:\n",
    "        # Compute the Kalman Gain\n",
    "        S = H*P*H.T + R\n",
    "        K = (P*H.T) * np.linalg.pinv(S)\n",
    "    \n",
    "        \n",
    "        # Update the estimate via z\n",
    "        Z = measurements[:,filterstep].reshape(H.shape[0],1)\n",
    "        y = Z - (H*x)                            # Innovation or Residual\n",
    "        x = x + (K*y)\n",
    "        \n",
    "        # Update the error covariance\n",
    "        P = (I - (K*H))*P\n",
    "\n",
    "   \n",
    "    \n",
    "    # Save states for Plotting\n",
    "    xt.append(float(x[0]))\n",
    "    yt.append(float(x[1]))\n",
    "    dxt.append(float(x[2]))\n",
    "    dyt.append(float(x[3]))\n",
    "    ddxt.append(float(x[4]))\n",
    "    ddyt.append(float(x[5]))\n",
    "    Zx.append(float(Z[0]))\n",
    "    Zy.append(float(Z[1]))\n",
    "    Px.append(float(P[0,0]))\n",
    "    Py.append(float(P[1,1]))\n",
    "    Pdx.append(float(P[2,2]))\n",
    "    Pdy.append(float(P[3,3]))\n",
    "    Pddx.append(float(P[4,4]))\n",
    "    Pddy.append(float(P[5,5]))\n",
    "    Kx.append(float(K[0,0]))\n",
    "    Ky.append(float(K[1,0]))\n",
    "    Kdx.append(float(K[2,0]))\n",
    "    Kdy.append(float(K[3,0]))\n",
    "    Kddx.append(float(K[4,0]))\n",
    "    Kddy.append(float(K[5,0]))"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "metadata": {
    "collapsed": false
   },
   "outputs": [],
   "source": []
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "## Plots"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "### Uncertainty"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 17,
   "metadata": {
    "collapsed": false
   },
   "outputs": [
    {
     "data": {
      "text/plain": [
       "<matplotlib.legend.Legend at 0x1086eaa10>"
      ]
     },
     "execution_count": 17,
     "metadata": {},
     "output_type": "execute_result"
    },
    {
     "data": {
      "image/png": "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\nwgAAAABJRU5ErkJggg==\n",
      "text/plain": [
       "<matplotlib.figure.Figure at 0x1087bdbd0>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "fig = plt.figure(figsize=(16,9))\n",
    "plt.subplot(211)\n",
    "plt.plot(range(len(measurements[0])),Px, label='$x$')\n",
    "plt.plot(range(len(measurements[0])),Py, label='$y$')\n",
    "plt.title('Uncertainty (Elements from Matrix $P$)')\n",
    "plt.legend(loc='best',prop={'size':22})\n",
    "plt.subplot(212)\n",
    "plt.plot(range(len(measurements[0])),Pddx, label='$\\ddot x$')\n",
    "plt.plot(range(len(measurements[0])),Pddy, label='$\\ddot y$')\n",
    "\n",
    "plt.xlabel('Filter Step')\n",
    "plt.ylabel('')\n",
    "plt.legend(loc='best',prop={'size':22})"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "### Kalman Gains"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 18,
   "metadata": {
    "collapsed": false
   },
   "outputs": [
    {
     "data": {
      "text/plain": [
       "<matplotlib.legend.Legend at 0x10731e310>"
      ]
     },
     "execution_count": 18,
     "metadata": {},
     "output_type": "execute_result"
    },
    {
     "data": {
      "image/png": "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\nTdLT08v+3rZtGz169ACgSZMmdSJZBSWsIiIiIiL1RkREBK+99hp33nkn8+fPx1rL008/Xbb/xRdf\nJD4+njfffNPtPG8XWwqUCx3H4MGD2b59O0uXLvW4anFV6kp7eZKQkMD+/fspLi52S4iLior4/PPP\nPfbq+mPr1q38+te/DmiZgaA5rCIiIiIi9UhERAQbNmygT58+LFiwgLFjx5btK51HWb5nsKioiKee\neuq8xlRxmO2FjmP48OEkJyczZ84cXn31VY/HeOrtDFZ7eWPgwIEcO3aMpUuXum1/7rnnyMvLY+DA\ngX6VX1xczDvvvENJSQk//PAD+/btK+thBZg9e7Zf5QeKelhFREREROqZ0qS1f//+LFy4kJKSEhYu\nXMigQYNIT0/ntttuY+DAgeTn57Nq1SrCwsLOazwVk8FAxuHNsNqIiAhef/11+vXrR0pKCj179qRP\nnz7ExMSQn5/P/v37Wb16NaGhobRq1eq8xOlr7FWZNGkSr7zyCqNHj2b37t1cf/317Nmzh+XLl5Oc\nnMykSZP8iu2ZZ55hzJgxfPbZZ2zatInIyEh+9rOfAbB+/Xo6dOjgV/mBooRVRERERKQeCg8PZ/36\n9QwYMIBFixZhrWXBggVYa1m2bBljx44lNjaWu+66i9TUVK655ppKZXj6TVFP26pjjKl0zsSJE/2O\no6qyqxIfH8+uXbtYvnw5a9euJTMzk1OnTtG0aVOSkpIYMWIEw4YNIykpKaBxBiJ2T6KiotixYwfT\np09nw4YNrFixgpiYGNLS0sjIyKBp06ZexVGVX/ziF9x7772sWbOG6667jiVLlvDII4/QunVrEhIS\nGDJkiM+xB5K50BOBKwVgjA12DCIiIiJSvxhjLviCNiJSmTevRdcxPmXvmsMqIiIiIiIidZISVhER\nEREREamTlLCKiIiIiIhInaSEVUREREREROokJawiIiIiIiJSJylhFRERERERkTpJCauIiIiIiIjU\nSUpYRUREREREpE5SwioiIiIiIiJ1khJWERERERERqZOUsIqIiIiIiEidpIRVRERERERE6iQlrCIi\nIiIiIlInKWEVERERERGROkkJq4iIiIhIA5SdnU1ISAgrV64Mdij1wvlsr9zcXAYMGECLFi0ICQnh\ngQceCHgd9ZUSVhERERGROqw0UZo3b16lfdu2bePSSy8lLi6OTz75xKfyjTH+hlhnnDlzhsWLF9Or\nVy9atmxJWFgY0dHRdO7cmcmTJ3PgwAG/yjfGnJf2Sk1NJScnh/T0dF566SVGjRoV8Drqq9BgByAi\nIiIiIjWrmCht3LiRwYMHExcXx+bNm4mPjw9SZHXDoUOH6NevH/v376dnz56MHz+e2NhYTp8+zZ49\ne1i+fDlz587l8OHDxMbG1rr8Hj16UFBQQGhoYFOowsJC3nvvPR566CHGjx8f0LIvBkpYRURERETq\nmVWrVjF06FDat2/Ppk2biImJCXZIQVVQUMDtt99Obm4u69ato3///pWOKSwsZP78+T7XYYwhLCzM\nnzA9+v7777HWEh0dHdByi4uLOXv2LE2aNAlouReahgSLiIiIiNQjWVlZDBkyhJtuuomcnBy3ZPX0\n6dNMnTqVLl260KJFCyIiIkhKSiI9PZ2CgoIay37++ecJCQlhy5YtzJgxg9atWxMZGUnXrl358MMP\nAWcYcvfu3WnWrBlxcXHMmjWrUjm1iaO0zq1btzJ37lwSExOJiIjg6quv5oUXXvCqTZYuXcqBAweY\nOHGix2QVIDw8nEceecStd7U2cXqaw+pv7KmpqbRp0waAjIwMQkJCCAkJIScnB4C8vDxGjx5Nq1at\nCA8P56qrrmLMmDGcOHHCYxu+++67zJw5k8TERJo0acKaNWu8ar+6TD2sIiIiIiL1gLWWJ598kkcf\nfZTevXuzfv16IiMj3Y45cuQIy5YtY9CgQQwZMoTQ0FCys7OZPXs2e/bs4a233vKqrsmTJ1NSUsK4\nceMoLCxk3rx59O3bl5UrVzJ8+HBGjhzJ/fffz+rVq3nssceIj4/nvvvu8yuOKVOmcObMGdLS0ggL\nCyMrK4vU1FTatm1Lt27dqo137dq1GGMYPny4V9fnT5ye5rD6GvuoUaO44YYbGDduHCkpKaSkpADQ\nvn17Tp06Rbdu3fjyyy8ZNmwYHTt2ZPfu3WRlZbFlyxZ27txJs2bN3MqbMGECRUVFjBw5kqioKJKT\nk2vVHnWStTaoNycEERERERHvNaTPkFu3brXGGJuYmGiNMTYlJcWePXvW47Fnz561RUVFlbZPmzbN\nGmPszp07K5W7cuXKsm0rVqywxhh744032nPnzpVt37BhgzXG2MaNG9tdu3a51RcbG2tvvvlmn+Mo\nrbNjx45udR49etSGh4fbe+65p7rmsdZa27x5c3vZZZdV2l5cXGyPHTvmdisoKPApzuray5/Yc3Nz\nrTHGZmRkuG2fMmWKNcbYrKwst+2LFi2yxhg7bdq0SnEkJye7XV9N3njjDTtz5kzbt29fm5eXV7b9\npZdesgNyttElAAAgAElEQVQGDPCqDG9ei65jfMoX1cMqIiIiIhc9k3HhVsK10+15Kffbb78FICEh\ngcaNG3s8pvz2oqIifvzxR4qLi+nduzezZs1i586ddOrUqca60tLS3BYX6t69OwBdu3alY8eObvV1\n6tSJ999/3+84HnzwQbc64+LiaNeuHQcPHqwx3vz8fOLi4ipt37dvH9dee63btjlz5vDwww/7HKcn\n/sRelXXr1tGyZUtGjBjhtn3kyJFkZGSwbt06ZsyY4bYvLS2NiIgIr8o/fvw4n376KVOnTqV9+/Zs\n376dAQMGALBmzZpKvbfBooRVRERERC565yuJvJDS09PJzs5m3rx5WGuZO3eux+MWL17MkiVL2Ldv\nHyUlJW77Tp486VVdCQkJbvdLFwTytBJxdHQ0x48f9zuOinUCNG/enMOHD9cYb1RUFPn5+R7L3Lx5\nMwB79+5lwoQJlYb0no/2qk3sVcnNzaVz586EhLgvO9SoUSOSkpLYu3dvpXPatWvndfnvvPMO9957\nLx999BFffPEFnTt3BpwRuDt27OCJJ57wOfZAUsIqIiIiIlIPREZGsnHjRu644w4yMzMpKSkhMzPT\n7ZjMzEwmTJjArbfeytixY4mLiyMsLIwjR46QmppaKSGrSqNGjWq1vSJf4qiqbGdEafU6dOjA9u3b\n+eqrr8oWMQKnzXr16gVQKfHzNU5P/Ik9kCrOaa7O3XffDcDs2bPp3bt3WQ/1xx9/zIkTJ/jlL395\nXmKsLSWsIiIiIiL1REREBK+99hp33nkn8+fPx1rL008/Xbb/xRdfJD4+njfffNPtPG8XWwqUCx3H\n4MGD2b59O0uXLvW4anFV6kp7eZKQkMD+/fspLi52S4iLior4/PPPPfbq+mLt2rVMnz697P62bdu4\n4ooraN++fUDK95d+1kZEREREpB6JiIhgw4YN9OnThwULFjB27NiyfaXzKMv3DBYVFfHUU0+d15gq\nDrO90HEMHz6c5ORk5syZw6uvvurxGE+9ncFqL28MHDiQY8eOsXTpUrftzz33HHl5eQwcONDvOk6c\nOME333xTNhwYICcnp2zOcl2gHlYRERERkXqmNGnt378/CxcupKSkhIULFzJo0CDS09O57bbbGDhw\nIPn5+axatYqwsLDzGk/FZDCQcXgzrDYiIoLXX3+dfv36kZKSQs+ePenTpw8xMTHk5+ezf/9+Vq9e\nTWhoKK1atTovcfoae1UmTZrEK6+8wujRo9m9ezfXX389e/bsYfny5SQnJzNp0iS/4wsLC3NbeOrA\ngQO8/fbblRZzCiYlrCIiIiIi9VB4eDjr169nwIABLFq0CGstCxYswFrLsmXLGDt2LLGxsdx1112k\npqZyzTXXVCrD02+KetpWHWNMpXMmTpzodxxVlV2V+Ph4du3axfLly1m7di2ZmZmcOnWKpk2bkpSU\nxIgRIxg2bBhJSUkBjTMQsXsSFRXFjh07mD59Ohs2bGDFihXExMSQlpZGRkYGTZs29SqO6jRr1oxn\nn32Wp556iuuvv56DBw9y+vRpbrnlFp/jDjRzoScCVwrAGBvsGERERESkfjHGXPAFbUQudtOnT2fJ\nkiV89913XifA3rwWXcf4lL1rDquIiIiIiEgDNHXqVF5//XXAmcf78ssvM3r0aL96hgNNCauIiIiI\niEgDc+zYMebMmVP2G7rz5s3jyiuvJD09PciRudOQYBERERGpdzQkWMR/CxYsoLCwkB9++IHIyEim\nTZvmtgiTN873kGAlrCIiIiJS7yhhFakbNIdVREREREREGiQlrCIiIiIiIlInKWEVERERERGROqnG\nhNUY86/GmP3GmC+MMY942N/fGPMXY8weY8yfjDG/8PZcERERERERkapUu+iSMaYRcAD4F+Ao8Cfg\nHmvtZ+WOaWqt/bvr758Da6y17b0513WOFl0SERERkVrRoksidUOwF13qDBy01n5lrT0HvAz0L39A\nabLq0gwo8fZcERERERERkaqE1rD/SuBwuftHgC4VDzLGDACeBFoCv6rNuSLiKCqC4cPh6699L6NJ\nE1i6FOLiAheXiIiIiEiw1JSwejXOwlr7KvCqMeYWYBbQpzZBPP7442V/9+zZk549e9bmdJGLwu9+\nB199BdOn+17G4sWwahVMmBCwsEREREREaiU7O5vs7OyAlFXTHNauwOPW2n913U8HSqy1/13NOV8C\nnYB23pyrOawicPgw3HADvP8+tGvnezmbNjkJ7x//GLjYRERE6iLNYRWpG873HNaaelj/DCQZY9oA\n3wB3AfdUqDwROGSttcaYjkCYtfaEMabGc0UuFqNGwZtv+n7+jz/CuHH+JasA//zPcM89cOQI/Oxn\n/pUlIiIiIhJs1Sas1toiY8wY4G2gEbDMWvuZMWaka/8zwL8B/2GMOQcU4CSmVZ57/i5FJHiys2H5\ncmjb1rfzQ0ICk2A2bgx33AF/+AP85jf+lyciIiIXr+zsbHr16sWKFSsYOnRosMOp885ne+Xm5jJu\n3Dh27NjB8ePHGTp0KCtWrAhoHfVVTT2sWGvfBN6ssO2Zcn/PBmZ7e67IxcZap0ezUyeIigp2NPBv\n/wYzZ0KHDr6X0awZdO4cuJhERETEd6WJ0pw5c3j44Yfd9m3bto0777yTpk2bsmnTJjr48AHAGJ9G\natZJZ86cYfny5axdu5ZPPvmEv/3tbzRt2pSkpCR69erFAw88wNVXX+1z+caY89JeqampfPzxx0yd\nOpWYmBgSExMDXkdV3njjDe677z5Wr15N3759L1i93qoxYRWR6uXngzF1I1kF6NMHXnwRZs3yvYwP\nPoBDhyAmJnBxiYiIiH8qJkobN25k8ODBxMXFsXnzZuLj44MUWd1w6NAh+vXrx/79++nZsyfjx48n\nNjaW06dPs2fPHpYvX87cuXM5fPgwsbGxtS6/R48eFBQUEBoa2BSqsLCQ9957j4ceeojx48cHtGxv\nhIaGEhERUWe/uFDCKuKnujZfNCIC1qzxr4yePeGjj5SwioiI1FWrVq1i6NChtG/fnk2bNhHTwP/T\nLigo4Pbbbyc3N5d169bRv3//SscUFhYyf/58n+swxhAWFuZPmB59//33WGuJjo4OaLnFxcWcPXuW\nJk2aVHtc3759+fbbbwNadyCFBDsAkfquriWsgXDttfDxx8GOQkRERDzJyspiyJAh3HTTTeTk5Lgl\nq6dPn2bq1Kl06dKFFi1aEBERQVJSEunp6RQUFNRY9vPPP09ISAhbtmxhxowZtG7dmsjISLp27cqH\nH34IOMOQu3fvTrNmzYiLi2OWh2FdtYmjtM6tW7cyd+5cEhMTiYiI4Oqrr+aFF17wqk2WLl3KgQMH\nmDhxosdkFSA8PJxHHnnErXe1NnFmZ2cTEhLCypUrAxZ7amoqbdq0ASAjI4OQkBBCQkLIyckBIC8v\nj9GjR9OqVSvCw8O56qqrGDNmDCdOnPDYhu+++y4zZ84kMTGRJk2asMbfXow6QD2sIn46evTiS1h/\n/nPYsSPYUYiIiEh51lqefPJJHn30UXr37s369euJjIx0O+bIkSMsW7aMQYMGMWTIEEJDQ8nOzmb2\n7Nns2bOHt956y6u6Jk+eTElJCePGjaOwsJB58+bRt29fVq5cyfDhwxk5ciT3338/q1ev5rHHHiM+\nPp777rvPrzimTJnCmTNnSEtLIywsjKysLFJTU2nbti3dunWrNt61a9dijGH48OFeXZ8/cXoaOutr\n7KNGjeKGG25g3LhxpKSkkJKSAkD79u05deoU3bp148svv2TYsGF07NiR3bt3k5WVxZYtW9i5cyfN\nmjVzK2/ChAkUFRUxcuRIoqKiSE5OrlV71EnW2qDenBBE6q+MDGunTg12FIH1xz9a27FjsKMQERGp\nWkP6DLl161ZrjLGJiYnWGGNTUlLs2bNnPR579uxZW1RUVGn7tGnTrDHG7ty5s1K5K1euLNu2YsUK\na4yxN954oz137lzZ9g0bNlhjjG3cuLHdtWuXW32xsbH25ptv9jmO0jo7duzoVufRo0dteHi4veee\ne6prHmuttc2bN7eXXXZZpe3FxcX22LFjbreCggKf4qyuvfyJPTc31xpjbEZGhtv2KVOmWGOMzcrK\nctu+aNEia4yx06ZNqxRHcnKy2/V545lnnrFPPPGEvf/+++0777xjly5dan/729/ae+65xx4+fLjG\n8715LbqO8Slf1JBgET8dOQJXXhnsKALr//0/+OwzKC4OdiQiIiIBYsyFu50npfMMExISaNy4scdj\nGjduTKNGjQAoKiri5MmT5OXl0bt3bwB27tzpVV1paWluiwt1794dgK5du9KxY0e3+jp16sQXX3zh\ndxwPPvigW51xcXG0a9eOgwcP1hhvfn4+UR5WwNy3bx8tW7Z0uy1atMivOD3xJ/aqrFu3jpYtWzJi\nxAi37SNHjqRFixasW7eu0jlpaWlERER4Xcezzz7Lddddx5QpU3jooYcYNGgQl19+OTfddBMvv/wy\nn376qc/xB4qGBIv46cgRuPPOYEcRWJdc4iy4dPAg+LHyu4iISN3hjOyr19LT08nOzmbevHlYa5k7\nd67H4xYvXsySJUvYt28fJSUlbvtOnjzpVV0JCQlu90sXBPK0EnF0dDTHjx/3O46KdQI0b96cw4cP\n1xhvVFQU+fn5HsvcvHkzAHv37mXChAmVhvSej/aqTexVyc3NpXPnzoSEuPcxNmrUiKSkJPbu3Vvp\nnHbt2tWqjuPHj9OlSxcAvv76a0JCQhgwYAAFBQVs27aNW265xef4A0UJq4ifLsY5rPDTwktKWEVE\n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\nKD3xRNCVAED4GGNivqENgANF82dxzzWu0nvEwFrTCKw4XOvWSX36OB+BMHvvPSkvzwmtAIDDQ2AF\n4kNNB9ZImy4BcYcNl5AomBIMAABwaGxbg9BhDSsSxdFHSyUl0uDBUjVHw0UlJUV67DGpSRN/awMA\nAIgHBFaEDmewIlEYI73xhrRxo/sxbr9dWrRIGjTIv7oAAADiBYEVoUNgRSLp1cvb/W+/LS1bRmAF\nAACJiTWsCB3WsAI/yslxAisAAEAiIrAidFjDCvyoY0cCKwAASFwEVoQOU4KBH+XkSAUFEic7AACA\nRERgRegQWIEfNWnibN703XdBVwIAAOA/AitChzWswI+MYR0rAABIXARWhA5rWIGqWMcKAAASFYEV\nocOUYKCqvetYAQAAEg2BFaFDYAWqYkowAABIVClBFwAcLtawAlV17Ch98ol0553ux6hfXxo/3lkT\nCwAAEC/osCJ0WMMKVHXccdJvfysVFrp//P730po1QX8lAIBYys/PV1JSkp588smgSwmFmvx+rVq1\nSsOGDVOTJk2UlJSkK664wvf3CCs6rAgdpgQDVSUlSTff7G2MTz6RvvhCOvZYf2oCAPgnPz9f/fr1\n09SpU3XddddVee3dd9/VkCFDlJmZqddff12dO3c+7PFNAk2v2b17t2bNmqXZs2friy++0Pfff6/M\nzExlZ2erX79+uuKKK9ShQwfX4xtjauT7NXr0aH3++ee69dZblZWVpbZt2/r+HtXZtWuXOnXqpAsu\nuED33HOPpk+frjvuuEOffPKJWrRoEZMaIiGwInQIrID/Ond2AuugQUFXAgA4mP2D0ssvv6zzzz9f\nzZs315tvvqnWrVsHVFl8+OqrrzR48GAVFBQoNzdXv/3tb9WsWTPt3LlTixcv1qxZs3Tvvfdq7dq1\natas2WGPf/rpp6uoqEgpKf5GqOLiYv373//WL3/5S/32t7/1dexIUlJS1K5dOzVv3lyS1LRpU7Vr\n107pcfSPbQIrQoc1rID/OneW3n476CoAANF6+umndfnllysnJ0evv/66srKygi4pUEVFRRo0aJBW\nrVqlOXPmaOjQoQdcU1xcrAceeMD1exhjlJqa6qXMan377bey1qpRo0a+jlteXq6SkhJlZGQc9JrU\n1FS9+eab+z6/6KKLdNFFF/lah1esYUXosIYV8N/eDisAIP498sgjGjVqlE444QS99957VcLqzp07\ndeutt6p3795q0qSJ0tPTlZ2drby8PBUVFUUc+69//auSkpL09ttv6w9/+IOOPfZY1a1bV3369NEH\nH3wgyZmG3LdvX9WrV0/NmzfX7bfffsA4h1PH3vd85513dO+996pt27ZKT09Xhw4d9Le//S2q78mM\nGTO0fPly3XDDDdWGVUlKS0vTTTfdVKW7ejh1VreG1Wvto0eP1nHHHSdJmjx5spKSkpSUlKT33ntP\nkrR582aNHz9eLVu2VFpamlq1aqVrr71WW7durfZ7+NZbb2nKlClq27atMjIy9Nxzz0X1/YtndFgR\nOkwJBvzXqZO0fLlUXi4lJwddDQCgOtZa3XnnnbrlllvUv39/vfTSS6pbt26Va9atW6eZM2fqvPPO\n06hRo5SSkqL8/Hzdc889Wrx4sV577bWo3ut3v/udKioq9Jvf/EbFxcW67777dOaZZ+rJJ5/UVVdd\npbFjx+rSSy/Vs88+q9///vdq3bq1LrnkEk913Hzzzdq9e7fGjRun1NRUPfLIIxo9erTatWunk08+\n+ZD1zp49W8YYXXXVVVF9fV7qrG4Nq9var776anXv3l2/+c1vNGLECI0YMUKSlJOTo+3bt+vkk0/W\n//73P1155ZXq0aOHPvnkEz3yyCN6++23tWjRItWrV6/KeNdff73Kyso0duxYNWjQQB07djys70dc\nstYG+nBKAKI3cKC1r7wSdBVA4mnTxtrly4OuAgCiU5v+DfnOO+9YY4xt27atNcbYESNG2JKSkmqv\nLSkpsWVlZQc8f9ttt1ljjF20aNEB4z755JP7nnviiSesMcb27NnTlpaW7nt+7ty51hhj69SpYz/+\n+OMq79esWTN70kknua5j73v26NGjynt+8803Ni0tzY4cOfJQ3x5rrbWNGze2DRs2POD58vJyu2nT\npiqPoqIiV3Ue6vvlpfZVq1ZZY4ydPHlyledvvvlma4yxjzzySJXnH374YWuMsbfddtsBdXTs2LHK\n1xfJK6+8YqdMmWLPPPNMu3nz5n3P/+Mf/7DDhg2Laoxo/izuucZVXqTDitBhDStQM/ZOC27fPuhK\nAMB/+fmx2wk3N9fWyLgbNmyQJLVp00Z16tSp9prKz5eVlWnHjh0qLy9X//79dfvtt2vRokU68cQT\nI77XuHHjqmwu1LdvX0lSnz591KNHjyrvd+KJJ+r999/3XMc111xT5T2bN2+u9u3ba+XKlRHrLSws\n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\ngg==\n",
      "text/plain": [
       "<matplotlib.figure.Figure at 0x1087a3090>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "fig = plt.figure(figsize=(16,9))\n",
    "plt.plot(range(len(measurements[0])),Kx, label='Kalman Gain for $x$')\n",
    "plt.plot(range(len(measurements[0])),Ky, label='Kalman Gain for $y$')\n",
    "plt.plot(range(len(measurements[0])),Kdx, label='Kalman Gain for $\\dot x$')\n",
    "plt.plot(range(len(measurements[0])),Kdy, label='Kalman Gain for $\\dot y$')\n",
    "plt.plot(range(len(measurements[0])),Kddx, label='Kalman Gain for $\\ddot x$')\n",
    "plt.plot(range(len(measurements[0])),Kddy, label='Kalman Gain for $\\ddot y$')\n",
    "\n",
    "plt.xlabel('Filter Step')\n",
    "plt.ylabel('')\n",
    "plt.title('Kalman Gain (the lower, the more the measurement fullfill the prediction)')\n",
    "plt.legend(loc='best',prop={'size':18})"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "### Covariance Matrix"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 19,
   "metadata": {
    "collapsed": false
   },
   "outputs": [
    {
     "data": {
      "image/png": "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\n9P8B8fFRaslVOpQAAAAASUVORK5CYII=\n",
      "text/plain": [
       "<matplotlib.figure.Figure at 0x1087a3510>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "fig = plt.figure(figsize=(6, 6))\n",
    "im = plt.imshow(P, interpolation=\"none\", cmap=plt.get_cmap('binary'))\n",
    "plt.title('Covariance Matrix $P$ (after %i Filter Steps)' % (m))\n",
    "ylocs, ylabels = plt.yticks()\n",
    "# set the locations of the yticks\n",
    "plt.yticks(np.arange(7))\n",
    "# set the locations and labels of the yticks\n",
    "plt.yticks(np.arange(6),('$x$', '$y$', '$\\dot x$', '$\\dot y$', '$\\ddot x$', '$\\ddot y$'), fontsize=22)\n",
    "\n",
    "xlocs, xlabels = plt.xticks()\n",
    "# set the locations of the yticks\n",
    "plt.xticks(np.arange(7))\n",
    "# set the locations and labels of the yticks\n",
    "plt.xticks(np.arange(6),('$x$', '$y$', '$\\dot x$', '$\\dot y$', '$\\ddot x$', '$\\ddot y$'), fontsize=22)\n",
    "\n",
    "plt.xlim([-0.5,5.5])\n",
    "plt.ylim([5.5, -0.5])\n",
    "\n",
    "from mpl_toolkits.axes_grid1 import make_axes_locatable\n",
    "divider = make_axes_locatable(plt.gca())\n",
    "cax = divider.append_axes(\"right\", \"5%\", pad=\"3%\")\n",
    "plt.colorbar(im, cax=cax)\n",
    "\n",
    "\n",
    "plt.tight_layout()\n",
    "plt.savefig('Kalman-Filter-CA-CovarianceMatrix.png', dpi=72, transparent=True, bbox_inches='tight')"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "## State Vector"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 20,
   "metadata": {
    "collapsed": false
   },
   "outputs": [
    {
     "data": {
      "image/png": "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\n+8sOtSGhFwAA2OcJvUtvqULv/sM8CQAAgH3LvffemwsuuCCttXzzm9/MmWeemVe+8pV517velSc+\n8Ym5//77c9FFF+WZz3zmpEvdi9ALAADAnB555JG85S1vycUXX5x169bl5ptvzgknnJDTTz89l1xy\nSa688sqceeaZefGLX5x3vOMdky53LwayAgAAYE6XXHJJzjrrrKxbty5JctBBB2Xnzp057rjjcthh\nh6Wq8qIXvSinn376hCv9cVp6AQAAFmHIcZxGZilORV6zZk1OPPHEPdM33nhjkuSUU05Jkrz5zW/O\nm9/85vEXMgQDWQEAAPs8A1ktzG/+5m/mwx/+cO67775lP3qz7s0AAAAsyDXXXJOXv/zlQwfepST0\nAgAAMLA777wzt912W17xilfsNf8DH/jAhCqam9ALAADArO65556sX78+5513XpLk6quvTpIcf/zx\ne5a59dZb841vfGMi9c1H6AUAAGBWn/vc53LDDTfkgAMOyIMPPphPfOITOfzww/ODH/wgSe/6veed\nd17OPffcCVc6MwNZAQAA+zwDWc3uwQcfzNvf/vYccMABeeihh3L++efnjjvuyIUXXpijjjoqu3bt\nyqZNm3LMMccsaL1LNZCV0AsAAOzzhN6lZ/RmAAAAWCShFwAAgM4SegEAAOgsoRcAAIDOEnoBAADo\nLKEXAACAzhJ6AQAA6CyhFwAAgM4SegEAAOgsoRcAAIDOEnoBAADoLKEXAACAzhJ6AQAA6CyhFwAA\ngM4SegEAAOgsoRcAAIDOEnoBAADoLKEXAACAOb373e/OIYcckmuuuSZJsnnz5hxyyCH5nd/5nQlX\nNj+hFwAAgDlt3bo1P/zhD3PvvfcmSb73ve/lgQceyNatWydc2fyqtTbpGhatqloX9gMAAJiMqopM\nMbvWWrZt25ZnPOMZe+Z997vfzdq1a1NVQ61zIa95f9mhNiT0AgAA+zyhd+ktVejdf5gnAQAAsO/Y\nvn173vnOd+aRRx7Jzp07c9lll2XVqlV7Ht+4cWO2b9+eD33oQxOscmZaegEAgH2elt65bdy4Meec\nc05Wr16dpzzlKfn4xz+e0047LUmyc+fOHHrooXnNa16TK664YuB1LlVLr4GsAAAAmNWtt96aww8/\nPOvWrdszevPhhx++5/EbbrghO3bsyEknnTSpEuekezMAAMAi1AXDDeQ0Ku388bZQ33PPPXnTm96U\n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\n3JD1ddXVZTqntfb14dl7JrlH1r9wqct0SlWdk+SpSV6XkxPEqsd01cYJimdSl7sces9OcsvY5c8N\nt0GXnNVaOzY8fyzJWcPzD8l6nR5Rv1k4w9n1z0/y4ajLdFBV3a2qPpb1Ont1a+0jUZfpnlcm+Q9J\n7hzbph7TRS3J+6vq2qp6wXDbTOryIixZtFNm4KJXWmvtNGtOq/MsjKq6X5K3Jbm0tfbVqpM/zKrL\ndEVr7c4kj6yqb03y9qr6vg3Xq8sstKr6sSRfaq1dV1UHJ+2jHtMhj2+tfbGqzkxyTVXdOH7lbupy\nl1t6P5/k3LHL5+bUtA9dcKyqHpQkVfXgJF8abt9Yv88ZboO5q6p7ZD3wvrG1dtVws7pMZ7XW/iHJ\nB5L8aNRluuVxSZ5RVX+d5IokT6yqN0Y9poNaa18c/r01yduz3l15JnW5y6H32iTnVdXDquqeWR/I\n/I45lwm26x1Jnjs8/9wkV41tf05V3bOqvjPJeUk+MofywSlqvUn39Uk+1Vp71dhV6jKdUlUPHM0C\nWlX3TvIjWR+jri7TGa21l7bWzm2tfWeS5yT5k9baT0c9pmOq6j5V9S3D8/dN8uQk12dGdbmz3Ztb\na7dX1SVJ3pfkjCSvb63dMOdiwaaq6ookP5zkgVV1S5L/mOQ3k7ylqp6f5OYkz06S1tqnquotWZ+J\n8fYk/6ZZVJvF8PgkP5XkE1V13XDbS6Iu0z0PTnL5cDWIuyW5srX27qr6b1GX6a5RnfSeTNeclfVh\nJsl6Rn1Ta+3qqro2M6jLpZ4DAADQV13u3gwAAABbEnoBAADoLaEXAACA3hJ6AQAA6C2hFwAAgN4S\negEAAOgtoRcAZqyq7qiq64anv6yqh1bVnw2ve1hVXT88/wNV9ZQZ3N6vVNVfVdXHh7f56OH2f1dV\n997t8QGgy+4+7wIAQA99vbV2/oZtj5+w3/lJHpXkPdMeuKru3lq7fezyv0jytCTnt9aOV9Ugyb2G\nV1+a5I1JvrGdwgNAn2jpBYB9UFX/uOHyPZK8PMlPDltnf6Kq7ltVf1BVHx62ED9juO/PVtU7quqP\nk1yz4dAPSvJ3rbXjSdJaW22tfbGqXpjkIUk+MPy/VNWTq+rPq+ovquotVXXf4fabq+pIVX1ieNvf\nvacPBgDsI6EXAGbv3mPdm9823NbGdxiG1F9L8ubW2vmttf+a5FeS/HFr7TFJnpjkt6rqPsN/OT/J\nv2qtPWHDbV2d5Nyq+nRV/U5V/a/D4786yReSHGytPamqHjg8/pNaa49K8hdJfmmsbF9urX1/ktck\nedXMHgkAmDPdmwFg9r4xoXvzJDU8jTw5ydOr6t8PL98ryXdkPZRe01r78sYDtNa+VlWPSvK/JHlC\nkiur6sWttcs37PrYJI9I8udVlST3TPLnY9dfMfz75iSvnKLsANAJQi8ALJZ/2Vr77PiGqnpMkq9t\n9g+ttTuTfDDJB4eTZD03ycbQm6wH5/99ijK00+8CAN2gezMAzM9XknzL2OX3JXnh6EJVjVqLx1uD\nT1FV31tV541tOj/JzcPzX01y/+H5Dyd5/Gi87nD88Pj//eTY3/EWYADoNC29ADB7k1pK24TzH0jy\n4qq6Lsn/leQ/JXlVVX0i6z9M/48kzxjuv1nr6/2S/HZVPSDJ7Uk+m+Tnhtf9XpL3VtXnh+N6fzbJ\nFVU1mt35V4b7J8lKVX08yW1JLt7OnQWARVat6cEEAMusqv46yaNaa6vzLgsAzJruzQCAX8AB6C0t\nvQAAAPSWll4AAAB6S+gFAACgt4ReAAAAekvoBQAAoLeEXgAAAHpL6AUAAKC3/n+ZyaFldFtXSwAA\nAABJRU5ErkJggg==\n",
      "text/plain": [
       "<matplotlib.figure.Figure at 0x109cbb7d0>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "fig = plt.figure(figsize=(16,16))\n",
    "\n",
    "plt.subplot(311)\n",
    "plt.step(range(len(measurements[0])),ddxt, label='$\\ddot x$')\n",
    "plt.step(range(len(measurements[0])),ddyt, label='$\\ddot y$')\n",
    "\n",
    "plt.title('Estimate (Elements from State Vector $x$)')\n",
    "plt.legend(loc='best',prop={'size':22})\n",
    "plt.ylabel('Acceleration')\n",
    "plt.ylim([-1,1])\n",
    "\n",
    "plt.subplot(312)\n",
    "plt.step(range(len(measurements[0])),dxt, label='$\\dot x$')\n",
    "plt.step(range(len(measurements[0])),dyt, label='$\\dot y$')\n",
    "\n",
    "plt.ylabel('')\n",
    "plt.legend(loc='best',prop={'size':22})\n",
    "plt.ylabel('Velocity')\n",
    "plt.ylim([-1,1])\n",
    "\n",
    "plt.subplot(313)\n",
    "plt.step(range(len(measurements[0])),xt, label='$x$')\n",
    "plt.step(range(len(measurements[0])),yt, label='$y$')\n",
    "\n",
    "plt.xlabel('Filter Step')\n",
    "plt.ylabel('')\n",
    "plt.legend(loc='best',prop={'size':22})\n",
    "plt.ylabel('Position')\n",
    "plt.ylim([-1,1])\n",
    "\n",
    "plt.savefig('Kalman-Filter-CA-StateEstimated.png', dpi=72, transparent=True, bbox_inches='tight')"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "## Position x/y"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 21,
   "metadata": {
    "collapsed": false
   },
   "outputs": [
    {
     "data": {
      "image/png": "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\nuQUAAGiDSZPad56RI0fm8ssvT5I88MADOe644/KZz3wmhx566GuOnT59es4888zce++9Wbp0aZYs\nWZKJEyeu9dyPPvpoPv3pT+e0005bZfvs2bOzyy67rP9g3yBxCwAA0AYbK2431IgRI3LCCSfkkksu\nyWGHHfaa/ccee2w+9alPZerUqenTp09OPfXUPPfcc0mSUsprjt91113z+c9/fpNcirwylyUDAABs\nQR544IFccMEFmT17dpJk1qxZufLKKzN27Nhst912efzxx7Ns2bLlxy9YsCDDhg1Lnz59MmPGjHzv\ne99bHrVvectb0qNHjzz00EPLjz/55JPz93//97nvvvuStL6P+8Mf/rDLP5e4BQAA2IK8uqrxmDFj\nMmjQoIwdOzb77LNPzj///EyYMCGjRo3K9ttvn+HDhydJLrzwwnzhC1/IVlttlS9+8Ys56qijlp9r\nwIABOfvss3PQQQdl2LBhmTFjRo488sicccYZOfroozNkyJDsvffemTp1apd/rtId7ke0vkopTY3j\nBgAAthyllG5x/9fubG3/Rp3bX3vN8zqYuQUAAKB64hYAAIDqiVsAAACqJ24BAAConrgFAACgeuIW\nAACA6olbAAAAqiduAQAAqJ64BQAA6CZmzZqVM846I7v+j12z9fZbZ9QBozJ58uQsWLCg3UPr9sQt\nAADAJtA0TaZPn56JH5mY3Ubslt1H7p7j/+L43H333UmSa665JiP3Hplv3PaNzJowK3OPmZv7Rt2X\n0y88PXu+Y888+OCDy89177335rrrrsvUqVMzf/789R7LHXfckQMPPDBDhw7NNttsk4MPPjh33XVX\nvvWtb2XcuHEb9DlnzpyZHj16pKOjY4POs756bdJ3AwAA2AK98sorOeFjJ+Saf78mL+3/Ujre25E0\nyeMPPZ6r33d1Dv+jw3PDj2/I4qMWJzuu9MKhycL/sTCLfrko4yaMy6UXXZozv3BmHn704fTasVey\nNFn2xLIcd9xxOf+r52fw4MGvO5YXX3wxhx9+eC6++OJMnDgxS5Ysye23356+fftu8Od8+eWXlz9v\nmmaDz7c+yqZ+w42hlNLUOG4AAGDLUUpZHnifPu3TufSGS7PoTxclqzfk4qTHRT3SMbYjGbv28/W5\nrE/yQrL0A0uTEUl6du6Yl/S9vW/e9vLbMv326Rk0aNA6x3XXXXflkEMOydy5c1fZfv/99+eAAw7I\n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\nZm4BoE06OlqXFb/73ckuu6y673e/a82+zpyZ7Lrra1/bq1eyxx7JQw8ln/986zu4ALAlM3MLAG1y\n223Jf/938tRTq26/557k+99vPd9nnzW/9tFHkwcfTMaObZ3j2We7dqwA0N2JWwBok1ejdsqU1s+X\nX05uuKF1S58ddmjNzs6Y8drXLV2aXHtt8v73J1OnJjfdlPzbvwlcALZspWmado9hvZVSmhrHDQBL\nlyZ///fJoEHJO9+Z3Hnna48588zkmWeSb36z9ftZZyV9+67Yf8MNye9/33o+cmQrcr/97dbPPfbo\n+s8AAF2tlJKmacr6vMbMLQBsQr/9bevn0KGtVY/f+c4V+8aMSbbZJrn77tb3bE8+ubX9kktWHHP/\n/clddyVLliRHHJH8r//V+u7us8++9nu7ALAlsaAUAGwiL7+c/PKXrSjdZ5/Wascvvrhi//TprZ83\n3pj065fst1/y4Q+3Ljm+665kyJDkqqta96795CdbxyStRad22aV1GTMAbKlclgwAm8jVV7dmbnfZ\npfV922HDWjO199+/4n61q/vCF5K/+7sVvw8enJx22qrH3HRTK2wnTOja8QPApvJmLksWtwCwCTz6\naHL55cn++7dmbXfcsfU92qZJvvzl1iXJhxzS+j7tXXet/Twf/GCy7bbJz3/eCuIBA5K5c5PZs5NT\nTjF7C8Dm4c3Erf8EAsAmMGxY8tGPJm9966rbS0l22y054IDW74cf3roV0Esvrfk811/fuhy5X79k\n3Lhk0aLW9kGDWt+9BYAtlbgFgE1gq61ajzU5/vhVf19b2CbJn/956+cTT6wIYgDAaskA0K2NHr3q\n7z17Ju94R+u2PwDACuIWALqZD394xfNXF6B61W67bfrxAEANxC0AdDODBq24zc+YMcmxx67Y9+p2\nAGBVvnMLAN3MwIGtlZTf+c7WolE9e7Z7RADQ/Zm5BYBuZtCgZNmy1srJr4btIYe0fl5/ffvGBQDd\nmbgFgG6mf//WLX6mTEmWLm1tW7y49fM//3PF7X8AgBXELQB0Mz06/+v8q18lkycns2a17mG7ww6t\n7U891b6xAUB35Tu3ANBNvetdye67J1dd1foO7p57Jk8+mcyf3+6RAUD3Y+YWALqhwYOTPfZI9tor\nOfnkZNttk622au37xS/aOzYA6I5K0zTtHsN6K6U0NY4bADbUv/5ra/b29NPbPRIA6DqllDRNU9br\n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\n/izJxUmOVlWSfKq7r+3uu6rqfUnuSvKdJNcKWwAAAB7Lam9LBgAAgMfLNtwt+YxV1dur6otV9bmq\nen9VPXHXueuq6p6qOlZVV605Tr5XVb28qr5QVQ9X1Qt3HX96VX2rqu5Y/tyw5jjZ26nmbzln7Q1S\nVUeq6sSuNXf12mPi9Krq6mV93VNVv7v2eNifqjpeVZ9f1ts/rT0eTq+q/rKq7q+qO3cd+4mqOlpV\nd1fVx6rqx9ccI3s7xdx5zRuiqg5U1SeWv2/+S1X91nJ8X+tvVNwm+ViSy7v7eUnuTnJd8uhndV+R\n5GCSq5PcUFXT/t0udHcmOZzkk3ucu7e7X7D8ufY8j4szs+f8WXsjdZI/2bXmPrL2gDi1qnpCkj/P\nZn0dTPLrVfXcdUfFPnWSQ8t6u2LtwfCY3pPNetvtTUmOdvdzknx82Wf77DV3XvPmeCjJG7r78iQv\nSvIby+vdvtbfqL+EdvfR7n5k2f10ksuW7WuS3NTdD3X38ST3ZnNTKrZEdx/r7rvXHgdn5zTzZ+3N\ntK87D7KqK7L5AeDx7n4oyd9ms+6YxZoborv/MckDJx3+pSTvXbbfm+SXz+ugOCOnmLvE+huhu7/e\n3f+8bP9Pki9mc4Phfa2/UXF7klcn+fCy/dQkJ3adO5HNfwxmeMbyVpGdqnrx2oNhX6y9mX5z+XjH\nu729butdmuS+XfvW2Dyd5Laq+kxVvXbtwXBWntLd9y/b9yd5ypqDYd+85g1TVU9P8oJsLmbua/2t\ndbfkU6qqo0ku2ePU9d19y/I1b07yYHffeJqncqes8+xM5m4PX01yoLsfWD7LeXNVXd7d3zxnA2VP\nZzl/e7H2VnaauXxzkncm+f1l/w+y+bVsrzlPQ2P/rKf5fq67v1ZVP5nNb4k4tlxhYqDu7qqyLufw\nmjdMVf1okr9P8vru/ubym3WSnNn627q47e4rT3e+ql6V5BeTvHTX4a8kObBr/7LlGOfRY83dKR7z\nYJIHl+3bq+pLSZ6d5PbHeXg8hrOZv1h7W+lM57Kq/iLJfn5wwfl38ho7kP//bgm2XHd/bfnnf1TV\nB7J5q7m4neX+qrqku79eVT+V5N/XHhBnprsfnSuveduvqn4om7D96+6+eTm8r/U36m3Jyx3OfjvJ\nNd397V2nPpjk16rq4qp6RjZx5I6E2+vRH8FU1ZOXG6akqp6Zzdx9ea2BcUZ2f3bF2htmeWH4rsPZ\n3CyM7fWZJM9e7ix/cTY3cPvgymPiDFXVD1fVjy3bP5LkqlhzE30wySuX7Vcmufk0X8sW8Zo3R20u\n0b47yV3d/Y5dp/a1/kb9ntuquifJxUn+azn0qe/eXbeqrs/mc7jfyeYy9kfXGSV7qarDSf40yZOT\n/HeSO7r7ZVX1K0l+L5s7pD2S5C3d/aH1RspeTjV/yzlrb5Cq+qskz8/m7a7/muR1uz7Lwhaqqpcl\neUeSJyR5d3f/4cpD4gwtP/T7wLJ7UZK/MX/brapuSvKSbF7v7k/yliT/kOR9SZ6W5HiSX+3ub6w1\nRva2x9y9NcmheM0bYbnvzieTfD7/95Gc67K5aHLG629U3AIAAMBeRr0tGQAAAPYibgEAABhP3AIA\nADCeuAUAAGA8cQsAAMB44hYAAIDxxC0AbKmqOlBVX66qJy37T1r2n7b22ABg24hbANhS3X1fkncm\nedty6G1J3tXd/7beqABgO1V3rz0GAOAUquqiJJ9N8p4kr0ny/O5+eN1RAcD2uWjtAQAAp9bd36mq\n30lya5IrhS0A7M3bkgFg+70syVeT/MzaAwGAbSVuAWCLVdXzk/xCkp9N8oaqumTlIQHAVhK3ALCl\nqqqyuaHU65ebS709yR+tOyoA2E7iFgC212uTHO/ujy/7NyR5blX9/IpjAoCt5G7JAAAAjOfKLQAA\nAOOJWwAAAMYTtwAAAIwnbgEAABhP3AIAADCeuAUAAGA8cQsAAMB44hYAAIDx/hczUW/cdvtwBgAA\nAABJRU5ErkJggg==\n",
      "text/plain": [
       "<matplotlib.figure.Figure at 0x10987ec50>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "fig = plt.figure(figsize=(16,16))\n",
    "plt.plot(xt,yt, label='State',alpha=0.5)\n",
    "plt.scatter(xt[0],yt[0], s=100, label='Start', c='g')\n",
    "plt.scatter(xt[-1],yt[-1], s=100, label='Goal', c='r')\n",
    "\n",
    "plt.xlabel('X')\n",
    "plt.ylabel('Y')\n",
    "plt.title('Position')\n",
    "plt.legend(loc='best')\n",
    "plt.xlim([-20, 20])\n",
    "plt.ylim([-20, 20])\n",
    "plt.savefig('Kalman-Filter-CA-Position.png', dpi=72, transparent=True, bbox_inches='tight')"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "# Conclusion"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 22,
   "metadata": {
    "collapsed": false
   },
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "Your drifted 15 units from origin.\n"
     ]
    }
   ],
   "source": [
    "dist=np.cumsum(np.sqrt(np.diff(xt)**2 + np.diff(yt)**2))\n",
    "print('Your drifted %d units from origin.' % dist[-1])"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "As you can see, good idea to measure the position as well as the acceleration to try to estimate the position."
   ]
  }
 ],
 "metadata": {
  "kernelspec": {
   "display_name": "Python 2",
   "language": "python",
   "name": "python2"
  },
  "language_info": {
   "codemirror_mode": {
    "name": "ipython",
    "version": 2
   },
   "file_extension": ".py",
   "mimetype": "text/x-python",
   "name": "python",
   "nbconvert_exporter": "python",
   "pygments_lexer": "ipython2",
   "version": "2.7.11"
  }
 },
 "nbformat": 4,
 "nbformat_minor": 0
}
